Hardware management and reconstruction using visual graphics

ABSTRACT

In an approach for updating instructions of machine repairs to a user interface, a processor populates a quantity of machine components used to construct a machine model. A processor receives the machine model constructed from the quantity of machine components. A processor couples the machine model with a set of vital product data. A processor associates a set of instructions for a repair procedure with the machine model and the vital product data file. A processor generates a visual representation of the repair procedure specific to the machine model.

BACKGROUND OF THE INVENTION

The present invention relates generally to the field of hardwaremanagement and reconstruction of hardware using visual graphics and moreparticularly to a three-dimensional video graphic showing the stepsnecessary to repair the hardware.

Repair and maintenance of manufacturing and production equipmentrequires fully equipped, safety-trained operators who are capable ofperforming a wide range of repairs for a diverse group of machines. Someof the tasks performed by these operators include inspection,disassembly, re-assembly, alignment, measurements, cabling, componentrepair, milling, turning, boring, and many other procedures to helpensure a machine is operating at optimum performance and safety.Operators need to be well trained in many different skills, andknowledgeable of many machines, brands, and technologies to completethese tasks. Operators may require an educational background in areassuch as electronics, mechanics, software, chemicals, and otherscientific areas as well have an understanding of the difference betweenbrands and models within the brand's product lines.

Operators frequently use manuals to understand the machines theoperators are repairing and/or maintaining. Sometimes a manual containsmodels of the machines, along with the textual directions. These modelscan be in the form of 2-dimensional drafts, 3-dimensional models,templates, schematics, or other forms of visual data that can give theoperator a better understanding of the machine or component. The modelscan be of a single component or of a thousand part machine. They can becreated on a computer or other computing device and can be from shellmodels, to solid models including specific material characteristics.

SUMMARY

Aspects of an embodiment of the present invention include an approachfor updating instructions of machine repairs to a user interface. Aprocessor populates a quantity of machine components used to construct amachine model. A processor receives the machine model constructed fromthe quantity of machine components. A processor couples the machinemodel with a set of vital product data. A processor associates a set ofinstructions for a repair procedure with the machine model and the vitalproduct data file. A processor generates a visual representation of therepair procedure specific to the machine model.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a block diagram of a computing environment, in accordancewith one embodiment of the present invention.

FIG. 2 is a flowchart depicting operational steps of an update functionfor creating a tutorial executing within the computing environment ofFIG. 1, in accordance with one embodiment of the present invention.

FIG. 3 is a flowchart depicting operational steps of an update functionfor updating a tutorial executing within the computing environment ofFIG. 1, in accordance with one embodiment of the present invention.

FIG. 4 is a block diagram of internal and external components of theoperator computing device and server of FIG. 1, in accordance with oneembodiment of the present invention.

DETAILED DESCRIPTION

Embodiments of the present invention recognize that typical techniquesin hardware and software service organizations can contribute to errorswhile servicing equipment. Examples of these errors include removing thewrong component from a machine, improperly cabling, removing the wrongcable between components in the machine, and machine upgrades andadditions (e.g., adding new memory, new processor nodes, and new I/Ocards). These types of service related errors can lead to machineoutages that severely impact productivity of the machine. Embodiments ofthe present invention recognize that some service operators may havelimited training for a particular machine. Operators may work on manydifferent brands of equipment and may not be familiar with details ofthe many different machine designs and issues that may arise whencomponents or cabling is drastically different from brand to brand, andmachine to machine.

Embodiments of the present invention recognize that errors can beminimized by implementing computer generated instructions that guide anoperator in how to perform the repair for the specific machine requiringservice. These instructions will be referred to as Repair and Verify(R&V) instructions. The computer generated instructions can also beextended to other service operations, for example, maintenance,upgrades, and manufacturing execution system (MES) additions. Thecomputer generated instructions can also be extended to any devices ormachines which currently have R&V instructions or devices or machineswhich do not have R&V instructions. In embodiments of the presentinvention, an operator can select a service reference code related tothe assignment to be completed, and the operator will be instructedthrough a graphical representation with detailed steps of what needs tobe done. The service reference code is machine specific and assignmentspecific to reduce the possibility of errors by the operator. In someembodiments, the machine will not give a reference code and the operatorhas to determine the component that is causing the problem. The operatorcan select any component in the machine and a set of instructions areshown to the operator on how to remove that component.

Embodiments of the present invention disclose a method, computer programproduct, and computer system to manage the machine and the repair of anyfailing components by using interactive graphical illustrations to guidean operator during the R&V process. For each machine and eachassignment, there is a service reference code to reduce the possibilityof confusion by an operator among various machine brands and models. Theinteractive graphical instructions will greatly reduce the chances ofimproper repair jobs, wrong components or cables being removed, orextended periods of downtime due to lack of knowledge of the repairassignment and/or machine.

The present invention will now be described in detail with reference tothe Figures.

FIG. 1 depicts a block diagram of computing environment 100 inaccordance with one embodiment of the present invention. FIG. 1 providesan illustration of one embodiment and does not imply any limitationsregarding computing environment 100 in which different embodiments maybeimplemented. In the depicted embodiment, computing environment 100includes server 104 and operator computing device 116 interconnectedover network 102. Computing environment 100 may include additionalcomputing devices, servers, computers, or other devices not shown.

Network 102 may be a local area network (LAN), a wide area network (WAN)such as the Internet, any combination thereof, or any combination ofconnections and protocols that will support communications betweenserver 104 and operator computing device 116, in accordance withembodiments of the invention. Network 102 may include wired, wireless,or fiber optic connections.

Server 104 may be a management server, a web server, or any otherelectronic device or computing system capable of processing programinstructions and receiving and sending data. In some embodiments, server104 may be a laptop computer, tablet computer, netbook computer,personal computer (PC), a desktop computer, or any programmableelectronic device capable of communicating with operator computingdevice 116 via network 102. In other embodiments, server 104 mayrepresent a server computing system utilizing multiple computers as aserver system, such as in a cloud computing environment. In anotherembodiment, server 104 represents a computing system utilizing clusteredcomputers and components to act as a single pool of seamless resources.In the depicted embodiment, server 104 includes 3D demonstration program106, create function 118, and update function 108, Vital Product Data(VPD) database 110, 3D component database 112, and R&V database 114.Server 104 may include components, as depicted and described in furtherdetail with respect to FIG. 4.

3D demonstration program 106 operates to receive 3D models and R&Vinstructions to create a machine specific 3D animated instruction videofor operators. In one embodiment, an operator requests instructions toupdate, repair, or perform other work on a machine and 3D demonstrationprogram 106 provides the operator with an animated and annotated set ofinstructions. In the depicted embodiment, 3D demonstration program 106communicates with VPD database 110, 3D component database 112, and R&Vdatabase 114 and selects data from VPD database 110 and R&V database 114to create a tutorial or demonstration based on the operator's request.In one embodiment, 3D demonstration program 106 resides on server 104.In another embodiment, 3D demonstration program 106 may be located onanother server, or another computing device, provided that 3Ddemonstration program 106 is accessible to operator computing device116, and provided that 3D demonstration program 106 has access to VPDdatabase 110, 3D component database 112, and R&V database 114.

Create function 118 operates to build and animate an animation, as per arequest received by 3D demonstration program 106. Create function 118creates an animation that can be provided to an operator at operatorcomputing device 116. Create function 118 receives a request and buildsa 3D model, inputs R&V instructions, and animates the 3D model toillustrate to the operator the steps necessary to perform the repairs ormaintenance on the machine. In one embodiment, create function 118 usesinformation from VPD database 110, 3D component database 112, and R&Vdatabase 114 to build an initial 3D model with the R&V instructions. Inother embodiments, create function 118, retrieves an already constructed3D model and inserts the R&V instructions.

Update function 108 operates to update the file that 3D demonstrationprogram 106 is requested to update. Update function 108 updates a fileincluded in VPD database 110 when a machine component is upgraded,removed, downgraded, or altered and the machine specific VPD file isresponsive to the alterations and needs to be modified to show thesechanges so that the machine specific VPD file is a proper representationof the current machine build. Update function 108 acts to receive datafrom 3D component library 110, VPD database 110, and R&V database 114 toupdate the machine builds and R&V instructions. As machines are builtand modified, many machines of the same machine type may have differentmodifications performed to the machine as new technology becomesavailable, as the machine's purpose shifts, or as any quantity ofreasons cause a machine to be modified.

In one embodiment, a business with several machines of the same machinetype may have maintenance performed on these machines at differenttimes, and for different reasons. The maintenance, or other factors maycause each of the machines to be different from one another. Updatefunction 108 allows each machine to have individualized instructionsbased on the components of the machine. In one embodiment, 3Ddemonstration program 106 receives a request for a modification by anoperator at operator computing device 116 or by another operator atanother computer device (not shown) indicating an update request inresponse to, for example, a machine having been modified. 3Ddemonstration program 106 locates the machine specific VPD file in VPDdatabase 110 and updates the file according to the request 3Ddemonstration program 106 received. 3D demonstration program 106receives the request and update the VPD file, the associated R&Vinstructions included in R&V database 114, and the 3D component(s) from3D component database 112 that construct the machine model. When anoperator goes to perform maintenance or modifications to that machine 3Ddemonstration program 106 will incorporate the most accurate andup-to-date model and set of instructions. Updated information may comefrom operator computing device 116, another computer device, or anexternal device.

VPD database 110 may be a repository that may be written to and/or readby 3D demonstration program 106, create function 118, and updatefunction 108. Information gathered from 3D component database 112 andR&V database 114 may be stored in VPD database 110. Such information mayinclude VPD files. Examples of information in the VPD file include, butare not limited to, machine location, part numbers, serial numbers,Custom Card Identification Number (CCIN), manufacture, brand, machinelocation, machine type, machine model, and any other informationspecific to a machine. In another embodiment, VPD file can include anyamount of different pieces of information related to a single or aplurality of machines. The VPD file is created concurrently with the 3Dmodel and are linked together so any modifications made to the VPD fileor the 3D model will result in the other file being updated to reflectthe changes. VPD files are capable of being updated as machines areupdated, modified, repaired, or have any other work performed on themachines resulting in a change to a single component or many components.In one embodiment, VPD files are updated by the operator or from a thirdparty prior to the work being performed on the machine. In the depictedembodiments, VPD database 110 resides on server 104. In otherembodiments, VPD database 110 may reside on another server, or anothercomputing device, provided that 3D component database 112 is accessibleto 3D demonstration program 106.

3D component database 112 may be a repository that may be written toand/or read by 3D demonstration program 106, create function 118, andupdate function 108. Information gathered from but not limited to otherdatabases, 3D modeling programs, or third parties may be stored to 3Dcomponent database 112. Such information may include but not limited to3D models, 3D software, 3D components of 3D models, machine photos, andother necessary information related to the construction of 3D models ofmachines. In one embodiment, 3D component database 112 is modifiable bya user to add, remove, edit, and change data included within thedatabase. In the depicted embodiments, 3D component database 112 resideson server 104. In other embodiments, 3D component database 112 mayreside on another server, or another computing device, provided that 3Dcomponent database 112 is accessible to 3D demonstration program 106.

R&V database 114 may be a repository that may be written to and/or readby 3D demonstration program 106, create function 118, and updatefunction 108. Information gathered from the R&V instructions may bestored on R&V database 114. Such information may include the current R&Vinstructions used for machine repair and maintenance, past R&Vinstructions, and future R&V instructions created. R&V instructions aretextual documents that may or may not include images giving a step bystep procedure to perform specific tasks on different machines. The R&Vinstructions give a detailed description of each step of the procedurespecific to the machine that the textual document was created for. Inthe depicted embodiments, 3D component database 112 resides on server104. In other embodiments, 3D component database 112 may reside onanother server, or another computing device, provided that 3D componentdatabase 112 is to 3D demonstration program 106.

Operator computing device 116 may be a desktop computer, laptopcomputer, tablet computer, netbook computer, personal computer (PC), adesktop computer, mobile device, or any programmable electronic devicecapable of communicating via network 102. In other embodiments, operatorcomputing device 116 may be any electronic device or computing systemcapable of sending and receiving data, and communicating with server 104via network 102.

User interface 120 operates on operator computing device 116 to generatedisplay signals corresponding to content, such as windows, menus, icons,3D models, R&V instructions, VPD file information, and to receivevarious forms of user input. In one embodiment, user interface 120comprises an interface to 3D demonstration program 106, create function118, and/or update function 108. User interface 120 may send input to 3Ddemonstration program 106, create function 118, and/or update function108. User interface 120 may comprise one or more interfaces such as anoperating system interface and/or application interfaces.

FIG. 2 depicts flowchart 200 of create function 118, a function of 3Ddemonstration program 106 executing within computing environment 100 ofFIG. 1, in accordance with an embodiment of the present invention.Create function 118 typically operates when a machine is first designed,a machine is being built for the first time in a 3D environment, or forother reasons that would necessitate an initial build of a machine in a3D environment. 3D demonstration program 106 receives necessary models,VPD files, and R&V instructions and creates a visual representation ofhow to perform the work on a machine.

In step 202, create function 118 receives a 3D component database, suchas 3D component database 112. 3D component database 112 is used to buildthe complete 3D versions of each machine. In one embodiment, a set ofR&V instructions is linked with each 3D component, to allow a moredetailed set of instructions to the operator of how to remove or repaireach individual 3D component when work is to be performed on a machine.The 3D components in 3D component database 112 are of each individualcomponent that is necessary to build the virtual 3D model of themachine. In one embodiment, the 3D component database 112 is alreadypopulated with components to build the machines. In other embodiments,the 3D component database 112 is populated by a third party, by 3Ddesigners who create each component as they are needed for virtualmachine builds. In some embodiments, the 3D components are created in.3ds, .blend, .dxf, or other file formats that is currently used orcould be used in the future to create 3D models.

In step 204, create function 118 receives a 3D model of the machine. The3D model represents a complete build of a machine. In some embodiments,a 3D designer, a third party, or a program constructs the 3D model ofthe machine and the 3D model is added to 3D component database 112. Inother embodiments, create function 118 constructs the 3D model of themachine when the machine is first turned on. Create function 118receives the machines information at the initial startup, compares themachine information to the VPD file for the machine, and builds a 3Dmodel of the machine. In one embodiment, once the VPD file is createdfor a machine, create function 118 uses the part list that is containedwithin the VPD file and construct a 3D model of the machine. In anotherembodiment, once the VPD file is created for a machine, create function118 will alert a third party to build the 3D model of the machine. Inone embodiment, the 3D model of the machine is stored in 3D componentdatabase 112. In other embodiments, the 3D model of the machine isstored in a quantity of databases on a quantity of servers, provided 3Ddemonstration program 106 has access to the 3D models and provided the3D models are accessible by create function 118.

In step 206, create function 118 links a Vital Product Data (VPD) file.A VPD file is a collection of configuration and informational dataassociated with a particular set of hardware or software. VPD storesinformation such as part numbers, serial numbers, and engineering changelevels. In one embodiment, the VPD file is stored within VPD database110. In other embodiments, the VPD file is stored in another databaseproviding, 3D demonstration program 106 can access the VPD file. In oneembodiment, each VPD file requires a unique file name. In someembodiments, the VPD file is a .doc, .docx, .xml, or other similar filethat is capable of being manipulated by an operator. In one embodiment,the VPD file includes information about the machine, for example machinetype, machine serial number, machine model, machine name, machinenumber, part numbers, serial number and any other information related tothe machine and/or components of the machine. In some embodiments, theVPD file may be created by an operator, 3D designer, or anyone capableof creating the file. In one embodiment, the VPD file is createdsimultaneously with the 3D model. In other embodiments, the VPD file iscreated before, or after the creation of the 3D model and the VPD fileand the 3D model is linked together by a third operational step (notshown).

In step 208, create function 118 links the R&V instructions into the VPDfile. R&V instructions are the step by step directions to performcertain repairs and verifications on a machine. Examples of R&Vinstructions include step by step directions to remove differentcomponents (hard drives, I/O cards), steps to replace differentcomponents, update components, perform annual maintenance on machinecomponents, component verification, and other necessary repairs that areneeded to be done to the machines. In one embodiment, the R&Vinstructions are text only files. In other embodiments, the R&V filesmay include textual data, visual data, or a combination of both. Visualdata can be in the form of photographs of the parts, 3D rendered modelsof the components or machines, or other forms of visual graphics.

In one embodiment, create function 118 links the R&V instructions to theVPD file of the machine that the instructions are used on. Createfunction 118 receives the machine serial numbers, part numbers, CCIN, orcomponent numbers of the machine and the components of the machine andlinks the machine serial numbers, part numbers, CCIN, or componentnumbers of the machine and the components of the machine from the R&Vinstructions. The result is the R&V instructions are now linked to theVPD file, when a modification or repair is performed on a machine theoperator will have instructions relating to the components that need tobe removed. In other embodiments, the operator is permitted to accessother repair procedures if other work needs to be done to the machine.In one embodiment, the VPD file is updated automatically when componentsare replaced within the machine. In another embodiment, the VPD file isupdated by the operator or a third party anytime they are informed ofchanges that happen to the machine. In other embodiments, the machinewill be connected to 3D demonstration program 106 via a network 102 andwhen the machine reports an error it will update the VPD file to showthe components that need replacing or repairing. In another embodiment,the R&V files are created for each component that is stored in 3D modeldatabase 106. In such an embodiment, 3D demonstration program 106 linkseach R&V instruction set to each 3D component, such that in the VPD fileif any repairs or verifications need to be performed on the machine,each and every component associated with the repair or verificationincorporates a set of R&V instructions.

In step 210, create function 118 creates an animation of the removal andinstallation process for the relevant components of the machine. In oneembodiment, the animation will be created by the VPD file informingcreate function 118 of all the components that are related to the issue,and within a set of predefined parameters create function 118 willcreate an animation by exploding the affected components within theconfines of the constraints used to construct the 3D model. In otherembodiments, the animations are created by a 3^(rd) party and stored ina database and are incorporated into the VPD file for the machine. Thecurrent R&V instructions may or may not have an associated image to givea visual representation of the work that needs to be completed. In oneembodiment, create function 118 receives the VPD file, 3D model, and R&Vinstructions and create a 3-Dimensional animated video of the removaland installation process for each component that is to be affected bythe change in the VPD file. The 3D animated video includes the textualR&V instructions with the animation to give a complete set ofdirections. The R&V instructions are presented to the operator atoperator computing device 116. In other embodiments, the operator ispresented with a combination of textual, video, and images to give acomplete set of instructions to complete the task at the operatorcomputing device 116. In some embodiments, the operator is able toaugment the graphical perspective, for example zoom in, zoom out,rotate, highlight, cut away part of the machine, remove components thatare obstructing the relevant components to the task, and perform otheroptions to give a better view of the components so that task can becompleted without any errors. In one embodiment, the operator is able tostop, rewind, and fast forward the sequence of animations.

FIG. 3 depicts flowchart 300 of update function 108, a function of 3Ddemonstration program 106 executing within computing environment 100 ofFIG. 1, in accordance with an embodiment of the present invention.Updated function 108 operates to update a VPD file and all correspondingfiles and tutorials that are linked to the VPD file.

In step 302, update function 108 receives an updated a VPD file. Updatefunction 108 may update a VPD file before, during, or after the machineis updated or modified after the initial build of the VPD file. Anoperator documents any updates or repairs that are performed on eachmachine in the corresponding VPD file so that the most current machinebuild is accessible to the operators. In one embodiment, the machine and3D demonstration program 106 are connected to network 102, andresponsive to when the machine registers an error, or a failure, updatefunction 108 receives these updates and update the VPD file. In anotherembodiment, update function 108 receives the updates from the machineand will request an operator to verify and confirm that the updates areaccurate.

In step 304, update function 108 receives an updated 3D model associatedwith the VPD file. Update function 108 highlights the component that iscausing the error so that the VPD file reflects the service ormaintenance actions performed by the operator on the machine. In oneembodiment, update function 108 removes the component and replaces itwith an updated component highlighted in a specific color. In someembodiments, update function 108 accesses the 3D components and rebuildsthe machine, or replaces the components that have been updated ormodified. In one embodiment, update function 108 receives the updatedVPD file and requests approval from a third party to confirm themodifications are accurate. In one embodiment, update function 108receives the updated VPD file and informs a third party to update thecorresponding 3D model.

In step 306, update function 108 updates the animation of the repairprocess for the machine. Each 3D component may incorporate an associatedset of R&V instructions. The 3D model incorporates the necessarycomponents, and each component incorporates the associated R&Vinstructions. These elements may be linked through the VPD file. Whenupdate function 108 is presented with an update to a machine, updatefunction 108 updates the VPD file, which results in an update of the 3Dmodel and a reassignment of R&V instructions for the new machine build.These new R&V instructions are paired with the updated demonstrationanimation that update function 108 created regarding the components inthe VPD file that were updated. Reducing the chance of an inaccurate orincomplete set of instructions being shown to the operator.

FIG. 4 depicts a block diagram 400 of components of server 104, inaccordance with an illustrative embodiment of the present invention. Itshould be appreciated that FIG. 5 provides only an illustration of oneimplementation and does not imply any limitations with regard to theenvironments in which different embodiments may be implemented. Manymodifications to the depicted environment may be made.

Server 104 include communications fabric 402, which providescommunications between computer processor(s) 404, memory 406, persistentstorage 408, communications unit 410, and input/output (I/O)interface(s) 412. Communications fabric 402 can be implemented with anyarchitecture designed for passing data and/or control informationbetween processors (such as microprocessors, communications and networkprocessors, etc.), system memory, peripheral devices, and any otherhardware components within a system. For example, communications fabric402 can be implemented with one or more buses.

Memory 406 and persistent storage 408 are computer-readable storagemedia. In one embodiment, memory 406 includes random access memory (RAM)and cache memory 414. In general, memory 406 can include any suitablevolatile or non-volatile computer-readable storage media.

HPDP 104, VRH database 106 and SML database 108 are stored for executionby one or more of the respective computer processors 404 of server 104via one or more memories of memory 406 of server 104. In thisembodiment, persistent storage 408 includes a magnetic hard disk drive.Alternatively, or in addition to a magnetic hard disk drive, persistentstorage 408 can include a solid state hard drive, a semiconductorstorage device, read-only memory (ROM), erasable programmable read-onlymemory (EPROM), flash memory, or any other computer-readable storagemedia that is capable of storing program instructions or digitalinformation.

The media used by persistent storage 408 may also be removable. Forexample, a removable hard drive may be used for persistent storage 408.Other examples include optical and magnetic disks, thumb drives, andsmart cards that are inserted into a drive for transfer onto anothercomputer-readable storage medium that is also part of persistent storage408.

Communications unit 410, in the examples, provides for communicationswith other data processing systems or devices, including server 104. Inthe examples, communications unit 410 includes one or more networkinterface cards. Communications unit 410 may provide communicationsthrough the use of either or both physical and wireless communicationslinks. HPDP 104 may be downloaded to persistent storage 408 of server104 through communications unit 410 of server 104.

I/O interface(s) 412 allows for input and output of data with otherdevices that may be connected to server 104. For example, I/O interface412 may provide a connection to external devices 416 such as a keyboard,keypad, camera, a touch screen, and/or some other suitable input device.External devices 416 can also include portable computer-readable storagemedia such as, for example, thumb drives, portable optical or magneticdisks, and memory cards. Software and data used to practice embodimentsof the present invention, e.g., function of HPDP 104 can be stored onsuch portable computer-readable storage media and can be loaded ontopersistent storage 408 of server 104 via I/O interface(s) 412 of server104. Software and data used to practice embodiments of the presentinvention, e.g., HPDP 104 can be stored on such portablecomputer-readable storage media and can be loaded onto persistentstorage 408 of server 104 via I/O interface(s) 412 of server 104. I/Ointerface(s) 412 also connect to a display 418.

Display 418 provides a mechanism to display data to a user and may be,for example, a computer monitor.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

What is claimed is:
 1. A method for updating instructions of machinerepairs to a user interface, the method comprising: populating, by oneor more processors, a quantity of machine components used to construct amachine model, receiving, by the one or more processors, the machinemodel constructed from the quantity of machine components; coupling, bythe one or more processors, the machine model with a set of vitalproduct data; associating, by the one or more processors, a set ofinstructions for a repair procedure with the machine model and the vitalproduct data file; generating, by the one or more processors, athree-dimensional visual representation of the repair procedure specificto the machine model; augmenting, by the one or more processors, thethree-dimensional visual representation of the repair procedure to allowa user to change graphical perspective based on removing components fromthe three-dimensional representation obstructing relevant components andzooming in/out to give a better view of the relevant components; andpresenting, by the one or more processors, the three-dimensional visualrepresentation of the repair procedure specific to the machine modelwherein the three-dimensional visual representation can be instructed tostop, rewind and fast forward.
 2. The method of claim 1, furthercomprising: responsive to a change to the set of vital product data,updating, by the one or more processor, the quantity of machinecomponents to update the machine model.
 3. The method of claim 1,further comprising: indicating, by the one or more processors, an alertwithin the vital product data when a machine registers an error, whereinthe machine is represented by the machine model.
 4. The method of claim1, further comprising: permitting, by the one or more processors,activation of an alternate set of instructions and an alternate visualrepresentation of an alternate repair procedure specific to the machinemodel.
 5. The method of claim 1, wherein the visual representation ofthe repair procedure specific to the machine model comprises a set ofanimation sequences, wherein each animation sequence depicts a step ofthe repair procedure specific to the machine model.
 6. A computerprogram product for updating instructions of machine repairs to a userinterface, the computer program product comprising: one or morenon-transitory computer readable storage media and program instructionsstored on the one or more non-transitory computer readable storagemedia, the program instructions comprising: program instructions topopulate a quantity of machine components used to construct a machinemodel; program instructions to receive the machine model constructedfrom the quantity of machine components; program instructions to couplethe machine model with a set of vital product data; program instructionsto associate a set of instructions for a repair procedure with themachine model and the vital product data file; program instructions togenerate a three-dimensional visual representation of the repairprocedure specific to the machine model; program instructions to augmentthe three-dimensional visual representation of the repair procedure toallow a user to change graphical perspective based on removingcomponents from the three-dimensional representation obstructingrelevant components and zooming in/out to give a better view of therelevant components; and program instructions to present thethree-dimensional visual representation of the repair procedure specificto the machine model wherein the three-dimensional visual representationcan be instructed to stop, rewind and fast forward.
 7. The computerprogram product of claim 6, further comprising: program instructions,stored on the one or non-transitory more computer readable storagemedia, to, responsive to a change to the set of vital product data,update the quantity of machine components to update the machine model.8. The computer program product of claim 6, further comprising: programinstructions, stored on the one or more non-transitory computer readablestorage media, to indicate an alert within the vital product data when amachine registers an error, wherein the machine is represented by themachine model.
 9. The computer program product of claim 6, furthercomprising: program instructions, stored on the one or morenon-transitory computer readable storage media, to permit activation ofan alternate set of instructions and an alternate visual representationof an alternate repair procedure specific to the machine model.
 10. Thecomputer program product of claim 6, wherein the visual representationof the repair procedure specific to the machine model comprises a set ofanimation sequences, wherein each animation sequence depicts a step ofthe repair procedure specific to the machine model.
 11. A computersystem for updating instructions of machine repairs to a user interface,the computer system comprising: one or more computer processors, one ormore non-transitory computer readable storage media, and programinstructions stored on the one or more non-transitory computer readablestorage media for execution by at least one of the one or moreprocessors, the program instructions comprising: program instructions topopulate a quantity of machine components used to construct a machinemodel; program instructions to receive the machine model constructedfrom the quantity of machine components; program instructions to couplethe machine model with a set of vital product data; program instructionsto associate a set of instructions for a repair procedure with themachine model and the vital product data file; program instructions togenerate a three-dimensional visual representation of the repairprocedure specific to the machine model; program instructions to augmentthe three-dimensional visual representation of the repair procedure toallow a user to change graphical perspective based on removingcomponents from the three-dimensional representation obstructingrelevant components and zooming in/out to give a better view of therelevant components; and program instructions to present thethree-dimensional visual representation of the repair procedure specificto the machine model wherein the three-dimensional visual representationcan be instructed to stop, rewind and fast forward.
 12. The computersystem of claim 11, further comprising: program instructions, stored onthe one or more non-transitory computer readable storage media, to,responsive to a change to the set of vital product data, update thequantity of machine components to update the machine model.
 13. Thecomputer system of claim 11, further comprising: program instructions,stored on the one or more non-transitory computer readable storagemedia, to indicate an alert within the vital product data when a machineregisters an error, wherein the machine is represented by the machinemodel.
 14. The computer system of claim 11, further comprising: programinstructions, stored on the one or more non-transitory computer readablestorage media, to permit activation of an alternate set of instructionsand an alternate visual representation of an alternate repair procedurespecific to the machine model.
 15. The computer system of claim 11,wherein the visual representation of the repair procedure specific tothe machine model comprises a set of animation sequences, wherein eachanimation sequence depicts a step of the repair procedure specific tothe machine model.